<template>
  <div>
    <Header></Header>
    <router-view></router-view>
    <!-- 设置Footer组件在Login和Regiter页面不展示（可以用计算属性，也可以直接在路由表中给Login和Regiter路由设置元信息meta`isHidden:true`,然后在组件中判断meta决定是否展示Footer组件 -->
    <Footer v-if="!$route.meta.isFooterShow"></Footer>
  </div>
</template>

<script>
import Header from "@/components/Header"
import Footer from "@/components/Footer"
import { mapActions } from "vuex"

export default {
  name: "App",
  components: {
    Header,
    Footer
  },
  mounted () {
    //初始化TypeNav的三级分类数据,防止公共组件多次使用的时候进行多次请求
    this.reqCategoryList()
  },
  methods: {
    ...mapActions("category", ["reqCategoryList"])
  }
  //使用计算属性控制Footer组件在不同的路由中是否展示
  // computed: {
  //   isFooterShow () {
  //     return this.$route.name !== "login" && this.$route.name !== "register"
  //   }
  // }
}
</script>

<style>

</style>